# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: Mateusz Herych <heniekk@gmail.com>

pkgname=stk
pkgver=4.4.4
pkgrel=1
pkgdesc='The Synthesis ToolKit in C++'
arch=('i686' 'x86_64')
url='http://ccrma.stanford.edu/software/stk/'
license=('MIT')
depends=('gcc-libs' 'jack')
makedepends=('pkg-config')
optdepends=('tk: run provided demos/samples')
source=("http://ccrma.stanford.edu/software/stk/release/$pkgname-$pkgver.tar.gz"
        "$pkgname.license"
        runtime.patch)
md5sums=('66646cb1117eee2d767c4571cc51a8c3'
         'a0163d75a5f516b6c93f4fc948acff73'
         '36551c348340307c765fde85d4336e73')

build() {
  cd "$srcdir/$pkgname-$pkgver"

  # add missing linker flag
  export LIBS="$LIBS -lpthread" 

  # enable shared library
  sed -i 's/all : $(STATICLIB)/all : $(SHAREDLIB)/' src/Makefile.in

  # fix demo rawwaves path
  sed -i 's:\.\./\.\.:/usr/lib/stk:' projects/demo/demo.cpp

  # run actual build
  ./configure RAWWAVE_PATH=/usr/lib/stk/rawwaves/ --prefix=/usr --with-alsa --with-jack
  make

  # fix executable scripts
  patch -Np1 -i ../runtime.patch
}

package() {
  cd "$srcdir/$pkgname-$pkgver"

  mkdir -p "$pkgdir"/usr/{bin,{lib,include}/stk}

  # install library
  cp -a src/libstk.* "$pkgdir/usr/lib/"

  # install headers
  install -m644 include/* "$pkgdir/usr/include/stk/"

  # install runtime files
  cp -a rawwaves projects/demo/{demo,tcl} projects/effects/{effects,tcl} \
    projects/ragamatic/{ragamat,tcl,rawwaves} "$pkgdir/usr/lib/stk/"

  # install executables
  install -m755 projects/{demo/StkDemo,effects/StkEffects} "$pkgdir/usr/bin/"
  install -m755 projects/ragamatic/Raga "$pkgdir/usr/bin/StkRagamatic"

  # install license
  install -Dm644 "../$pkgname.license" "$pkgdir/usr/share/licenses/stk/LICENSE"

  # remove .DS_Store directory: https://bugs.archlinux.org/task/25255
  rm -rf "${pkgdir}/usr/lib/stk/rawwaves/.DS_Store"
}
